GNSS receiver with synchronization to external timescale

ABSTRACT

GNSS timing receiver with synchronization of raw GNSS measurements to an external timescale. Synchronization is achieved by using a hardware Time Interval Measurement Unit (TIMU). The TIMU measures time intervals between two pulse signals and makes additional processing of these measurements. The first pulse signal is generated inside the GNSS receiver. The second pulse signal is the external pulse signal generated by an external time reference device. This time interval is used to control the time instant when the output GNSS measurement will be taken. In the first embodiment all actual GNSS measurements are physically taken at time instants indicated by external pulse signal. These measurements are used as output GNSS measurements. In another embodiment all actual GNSS measurements are taken at their default time instants indicated by internal pulse signal. But output GNSS measurements are calculated at the time instants indicated by the external pulse signal.

BACKGROUND OF THE INVENTION Field of the Invention

The present invention relates to the field of synchronization ofGNSS-receivers with external timescale provided by external clock sourceand to the field of hardware design of integrated devices to supportthis synchronization.

Description of the Related Art

The GNSS positioning is based on a measurement of the radio signal'spropagation time between transmitting and receiving antennas [1]. Thetransmitting antenna is placed on the navigation Space Vehicle (SV). Thereceiving antenna is the antenna of the GNSS receiver. The receivingantenna can simultaneously receive different navigation signalstransmitted by different SVs.

Each SV has its own high precision time reference device. All these timereference devices of all SVs are synchronized with the time referencedevice of the GNSS ground control center. All these time references (SVstime references and the ground control time reference) jointly create acommon GNSS timescale. All SVs transmit their own GNSS signalssimultaneously according GNSS timescale. The transmission instant ofeach GNSS signal is encoded within that signal. So, when the GNSSreceiver receives the GNSS signal it can determine the transmissioninstant according GNSS timescale. When the GNSS receiver simultaneouslyreceives several GNSS signals transmitted by different SVs all thesesignals have different transmission times (but common reception time)because of different pathlengths between single receiving antenna anddifferent transmitting antennas.

The GNSS receiver also has its own time reference device. As usual thistime reference is a mid-grade quartz oscillator. This quartz oscillator,the nominal starting time (time zero), the time counter and the timecounter's correction algorithm jointly produce the receiver's timescale.When the GNSS receiver receives several GNSS signals simultaneously, thecommon receiving time of all these signals is measured accordingreceiver's timescale. The difference between transmitting and receivingtimes of each GNSS signal is the pseudo-propagation time of this signal.If this time difference is multiplied by the speed of light this productis called a pseudorange.

The GNSS receiver's timescale is not completely synchronized with GNSStimescale. The difference between GNSS timescale and the receiver'stimescale is called the time correction. To determine the position ofthe receiving antenna from pseudoranges the GNSS receiver must determinethe value of this time correction. The time correction is added to apositioning set of equations as an additional unknown value in additionto three unknown spatial coordinates. The left side of this set ofequations is filled by measured pseudoranges. Because these equationscontain four unknowns, minimum four different pseudoranges must bemeasured. So, to measure the position of the receiving antenna the GNSSreceiver must receive four different GNSS signals transmitted by fourdifferent SVs.

If the receiving antenna is placed in some fixed position and thisposition is known precisely the GNSS receiver may be used as a timereference and synchronization device [2]. The GNSS receiver operating inthis mode is called the timing receiver. The timing GNSS receiverproduce the local version of the high-precision GNSS timescale. Thetiming GNSS receiver use an external high-stable frequency source inplace of its own quartz oscillator and measures only one unknown—thecurrent value of time difference between GNSS timescale and externallyclocked receiver's timescale. This time difference is used for periodiccorrection of the receiver's timescale to maintain the synchronizationwith GNSS timescale. An output electrical Periodic Pulse Signal (PPS)produced from synchronized receiver's timescale is used as a physicaltime reference for synchronization of various external devices.

The time difference determined by GNSS timing receiver includes not onlyan actual difference between different timescales but also allpropagation delays within GNSS receiver. These delays are external andinternal cables belays, internal analog circuits delays and so on. Allthese delays must be calibrated and compensated for correct calculationof the time difference between two timescales. So, the precision of theGNSS receiver as the time reference device is limited by the precisionof delays calibrations, calibrations stability and internal noises whichaffect the internal timing algorithm. For most practical applicationslike communication equipment synchronization (GSM, CDMA, networking)this precision is enough.

The GNSS timing receiver may be used not only as the high-precision timereference device but also to measure GNSS signals pathlengths betweenspace-based SVs transmitting antennas and the single ground-basedreceiving antenna. If to extract the time difference (determined bytiming receiver) from the pseudo propagation time measured by thisreceiver, the result will be the true propagation time. The product ofthe true propagation time and the speed of light is the true pathlengthof a GNSS signal. This true pathlength also called the true range.

It is possible to direct the GNSS timing receiver to made measurementsof true ranges at designated periodic time instants according its ownversion of the GNSS time scale. But the precision of time instants ofthese measurements will be limited by timescale synchronization errorsas described above. For very special applications like GNSSinfrastructure support, high-precision GNSS SVs orbital parametersdistribution, etc., the accuracy of GNSS measurements synchronizationmust be enhanced. Also, for application of these kinds it is required topoint the exact time with respect to some external high-stable timescale(non-GNSS timescale) when GNSS measurements must be made.

The common approach to solve this synchronization problem is tosynchronize GNSS measurements instants with external timescale inpostprocessing. To implement this approach the external high-precisiontime reference device has to provide both a frequency signal to clockingthe GNSS timing receiver and a PPS to designate required instants forGNSS measurements. The PPS generated by GNSS timing receiver designatesactual instants of GNSS measurements. These two PPSs (one from externaltime reference and another from GNSS timing receiver) are connected toTime Interval Measurement Unit (TIMU). The TIMU continuously measuresthe time difference between two incoming pulses. GNSS measurements atthe receiver's PPS instants, time tags of these measurements accordingGNSS timescale and measured time intervals between two PPSs are recordedinto one common file. The typical duration of this file's record is onehour. This file is processed by special software to interpolate originalGNSS measurements to instants marked by external PPS.

The evident drawback of this approach is the impossibility to take GNSSmeasurements at required instants immediately. All required GNSSmeasurements will be available only after processing of logged data(after one hour or more). In other words, conventional schemes that relyon post-processing cannot deal with the issue of the receiver's clockdrift in real time.

SUMMARY OF THE INVENTION

To overcome the drawbacks described above, a new approach is proposed inthis application. According to the proposed approach, the TIMU is placeddirectly inside the GNSS receiver's housing. The TIMU measurements aretransferred directly to the GNSS signals receiving board. A GNSSFirmware (FW) corrects GNSS measurement process with the aid of TIMUmeasurements in real time to receive new measurements at the requiredtime instants.

The invention therefore relates to a timing GNSS receiver with TimeInterval Measurement Unit inside. This receiver can track the externalPPS generated by high precision time reference and take GNSSmeasurements at the time instances designated by this PPS in real time.Also, this invention describes the algorithm of real-time correction ofGNSS measurement process to produce GNSS measurements in required timeinstants.

To produce real-time GNSS measurements synchronized with an externalhigh-precision time reference, the timing GNSS receiver must be clockedby an external high-precision frequency source. Most of external timereferences available on the market produce a stable frequency signal inconjunction with the PPS signal. These two signals, the frequency signaland the PPS signal, are obtained from a single high-precisionoscillator, such as an active hydrogen maser ora cesium fountain, andprecisely synchronized. So, when GNSS receiver is clocked by frequencyof this kind the stability of its local realization of the GNSStimescale is limited by the stability of external high-precision timereference.

The GNSS receiving board installed inside the GNSS receiver's housinggenerates several PPSs. One of these PPSs may be outputted on the outleton the receiver's front or rear panel to synchronize some externaldevices. Other PPSs may be connected to some units inside the receiver'shousing. All these PPSs are synchronized with GNSS timescale and may beused as physical embodiments of time instants on this timescale.

The TIMU is compact-size electronic device which may be divided on twoparts—an analog time measurement part (a time interval transducer) and adigital control and interface part. The time interval transducer isthermostatted to eliminate the temperature dependencies of precisiontime measurement circuits. The thermostat is controlled by digitalcontrol part. Also this digital control part is used to read timemeasurements from transducer and to send these measurements via digitalinterface to GNSS receiving board. The time interval transducer has twopulse inputs. One pulse input is connected to external PPS, anotherpulse input is connected to PPS generated by GNSS receiver (internalPPS). The nominal frequency of PPS generated by GNSS receiver isselected the same as the frequency of PPS generated by external timereference.

At the start condition TIMU waits the first incoming edge of PPS(external or internal). This first edge triggers the time intervalcounter which will count the time up to detection of incoming edge ofanother PPS. This second edge stops the counter. If the starting edge isedge of external PPS the stopping edge will be edge of the internal PPSand vice versa. The counted value is the time interval duration betweentwo pulses. If the first incoming edge is the edge of external PPS thetime interval value is considered as negative. If the first incomingedge is the edge of internal PPS the time interval value is consideredas positive.

The time interval measured by TIMU is indicate the shift of receiver'sGNSS time scale with respect to external timescale. But the single TIMUmeasurement have not enough precision for time scales synchronization.As mentioned above these two timescales are clocked by commonhigh-stable clock reference. So, these two timescales have very lowrelative time drift and the series of consequent TIMU measurements maybe averaged to obtain smoothed noise-free estimation of the time shift.Because of low relative drift of these two timescales this averaging maybe made by sliding window. This approach allows to produce the averagedtime shift values at the same rate as the original (non averaged) TIMUmeasurements provided.

By default, the time instant when GNSS measurements are made and theinternal PPS are linked to the same receiver's GNSS timescale. Theaveraged time shift value may be used to connect the GNSS measurementinstant to external timescale. To do this the GNSS receiving board haveto take this value and change the output measurement instant withrespect to default one. If this value is negative the output measurementinstant has to be shifted left on the time axis relative to its defaultposition. If the averaged value is positive the output measurementinstant has to be shifted right on the time axis relative to its defaultposition.

There are two approaches to implementing this shift of the measurementinstant. The first approach is the physical shift of all measurements.All GNSS data processing algorithms are corrected to produce GNSSmeasurements exactly at required time instants. This approach is notoptimal because of the averaged time shift is not a stable value. Thisvalue is changed from one time interval measurement to another. All GNSSdata processing algorithms must to track these changes in real time andconstantly reorganize data processing sequences to produce GNSSmeasurements. This reorganization is accompanied by large overheads inthe form of expenditure of real-time computing resources. The positiveeffect of this approach is the absence of additional errors into outputGNSS measurements with corrected time instants.

Another approach is to use useful properties of raw GNSS measurements.All measured pseudoranges are quite slowly changing values with awell-known underlying physical model of the changes. This model may beused to interpolate (if averaged time shift value is negative) orextrapolate (if averaged time shift value is positive) actual GNSSmeasurements taken at their default positions. The interpolation (orextrapolation) error will be quite small because of slow changes ofactual GNSS measurements. This approach does not require any changes orcorrections into GNSS data processing algorithms. It only requires verysimple task for secondary processing of GNSS data with very smalloverheads. This approach introduces some acceptable error into outputGNSS measurements with corrected time instants.

There are various versions of GNSS devices and measuring systems thatuse synchronization with external time sources and external time scales.

The system described in [3] includes two GNSS receivers and two atomicclocks. One GNSS receiver is a stationary base station (base) thatsynchronizes the first atomic clock with the GNSS system time scale.Another GNSS receiver (rover) and the second atomic clock are installedon the moving vehicle. Before the vehicle starts to move, the secondatomic clock is synchronized with the first atomic clocks. After thesynchronization of the second atomic clocks has completed, the roverstarts to move and its GNSS receiver starts to measure the coordinatesof the rover. To measure the coordinates of the rover, the GNSS receiverin conjunction with the second atomic clock is solving the system ofequations only for rover's three unknown parameters—the rover'scoordinates. The fourth parameter, the correction to the rover's clock,is zero, because the time of reception of the GNSS signals is measuredby the second atomic clock synchronized with the time scale of the GNSSsystem.

The system described in [4] includes a GNSS base station and anadditional clock. This clock is synchronized with the GNSS time scaleusing the synchronization signal that is generated by the GNSS-base.After the synchronization is completed, this clock can independentlygenerate a timing signal synchronized with the GNSS time scale. Thisfeature is used when the synchronization signal from GNSS-base lost fora limited period of time.

The systems in [3] and [4] differ from the present invention because ofthe GNSS-base performs measurements in the GNSS time scale andsynchronizes the external time source with this scale. In the presentinvention, the stationary timing GNSS receiver performs GNSSmeasurements at times specified by an external time source that can workasynchronously with respect to the GNSS system time scale.

The composite measuring device described in [5] includes a sensor, ananalog to digital converter (ADC), an atomic clock, and a built-inmicrocontroller. This device is considered as a component of adistributed sensor network, which is controlled by the common host. Themicrocontroller reads the measurements from the output of the ADC andassigns the time tag to each new measurement. The time tag is receivedfrom embedded atomic clock at the measurement time instant.Measurements, with time tags are transmitted over a digitalcommunication channel to the common host for further processing. Thecomposite measuring device of [5] performs measurements at timesspecified by its own clock. In the present invention, the timing GNSSreceiver performs measurements at instants directly specified by anexternal time source.

The system in [6] includes an external reference oscillator, a GPSreceiver and a time interval counter to measure time difference betweenGPS receiver's PPS and external pulse. Several systems of this kind arelocated on a local area and send the time difference data to the centralprocessor. The central processor uses these time differences betweenreceiver's PPSs and local events to calculate time differences betweenlocal events occurred on different locations to measure the aircraft'sheight. The difference between system [6] and the present invention isthe local usage of time difference between PPS and external event toshift the time instant of GPS measurements. The presents invention doesnot use a remote central processor to process the time differences. Alsothe present invention uses measured time differences to shift GNSSmeasurement instants but not to measure the height.

Additional features and advantages of the invention will be set forth inthe description that follows, and in part will be apparent from thedescription, or may be learned by practice of the invention. Theadvantages of the invention will be realized and attained by thestructure particularly pointed out in the written description and claimshereof as well as the appended drawings.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory and areintended to provide further explanation of the invention as claimed.

BRIEF DESCRIPTION OF THE ATTACHED DRAWINGS

The accompanying drawings, which are included to provide a furtherunderstanding of the invention and are incorporated in and constitute apart of this specification, illustrate embodiments of the invention andtogether with the description serve to explain the principles of theinvention.

In the drawings:

FIG. 1 shows a general view of the GNSS receiver synchronized withexternal high-stable time reference.

FIG. 2 shows GNSS measurements synchronization with the externaltimescale.

FIG. 3 shows an internal structure of the time interval measurement unit(TIMU).

FIG. 4 shows Allan Variance for time interval measurements.

DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION

Reference will now be made in detail to the preferred embodiments of thepresent invention, examples of which are illustrated in the accompanyingdrawings.

FIG. 1 illustrates the general view of the timing GNSS receiversynchronized with external high-stable time reference. The stationarytiming GNSS receiver 101 includes a GNSS RF Frontend 102, a GNSS digitalprocessor 103 and a Time Interval Measurement Unit 104. The GNSS RFFrontend 102 receives GNSS signals from an external GNSS antenna 105.The antenna 105 is mounted on the fixed base and connected to the GNSSRF Frontend 102 via an antenna cable 106. The GNSS receiver 101 isclocked by an external frequency signal 107, generated by the externaltime reference device 108. The typical frequency of the signal 107 is 10MHz.

If the external frequency signal 107 is not available, the GNSS receiver101 may be clocked by internal mid-precision Local Oscillator 120. Inthis case the internal frequency signal 121 is used for clocking of theGNSS RF Frontend 102 and GNSS processor 103.

The GNSS processor 103 process the GNSS navigation signal received byantenna 105 and demodulated by RF frontend 102. The processor 103extracts a navigation information from this signal and calculates thetime correction to create its internal GNSS timescale. The GNSSprocessor 103 has several PPS outputs coupled with its internal GNSStimescale. One PPS output 109 is outputted from the processor 103 andmay be used as a time reference for external devices. Another PPS is theinternal PPS 110 connected to first input 111 of the TIMU 104. Thesecond input 112 of TIMU 104 is connected to the external PPS 113,generated by an external time reference device 108.

The external time reference device 108 incudes a physical oscillator 114and an electronic signal converter 115. The physical oscillator 114 hasa high-stability oscillating process. Examples of processes of that kindare a cesium fountain or a hydrogen maser Signals of the oscillator 114are converted to the stable frequency signal 107 and the external PPSsignal 113 by the electronic signal converter 115. Both these signals107 and 113 are created from one common oscillating process that takesplace in 114. Therefore, the signals 107 and 113 are synchronous.

The TIMU 104 transmits its data (usually a few bytes representing thetime interval) to the GNSS processor 103 via a bidirectional in-circuitinterface 116. GNSS processor 103 sends to the TIMU 104 some control andservice information (e.g., configuration settings, whether the TIMUshould do a coarse time interval determination or a fine one, etc.).Internally, the TIMU 104 includes an analog part 117 and a digital part118. The analog part 117 is intended to measure time interval betweentwo adjacent pulses received at inputs 111 and 112. The digital part 118includes a microprocessor to process measured time intervals and toproduce data for the GNSS processor 103. In one embodiment of the TIMU104 the data processing is the simple measured data averaging andscaling to the standard time measuring units (milli, micro orpicoseconds). In another embodiment of the TIMU 104 the data processingis the measured data filtration as a part of a delay locked loop. Inthis case, the firmware of the digital part 118 implements the loopfilter 119. In one embodiment of this firmware the loop filter 119 is aProportional-Integrating-Differentiating (PID) filter.

FIG. 2 illustrates the synchronization process of the GNSS timingreceiver 101 with the external time reference device 108 from the pointof view of GNSS measurements. Each GNSS timing receiver 101 implementsits own replica of GNSS timescale 201. This timescale materialized bysome periodic events 202 occurs inside the GNSS processor 103 clocked bythe external frequency 107 or by the internal frequency 121. Theseevents 202 are used to produce the internal PPS 110. In one embodimentof the GNSS receiver 101 the rising edges 203 of internal PPS 110 aresynchronized with the periodic events 202. In one embodiment the risingedges 203 indicate default time instants on the timescale 201 whendefault GNSS measurements 204 are taken. Each default time instant forGNSS measurement has its own time tag 205 connected to GNSS timescale201.

In one embodiment rising edges 206 of the external PPS 113 indicaterequired time instants when GNSS measurements should be taken. TIMU 104continuously measures the duration of the time interval betweenconsequent rising edges 203 and 206. If the rising edge 206 is detectedbefore the rising edge 203 the time interval T_(PPS) 207 is consideredas negative, T_(PPS)<0. If the rising edge 203 is detected before therising edge 206, the time interval T_(PPS) 207 is considered aspositive, T_(PPS)>0.

When the negative time interval 207 is measured, the required GNSSmeasurement 208 has to occur before the default GNSS measurement 204.When the positive time interval 207 is measured, the required GNSSmeasurement 209 have to occur after the default GNSS measurement 204. Ifthe time position of the default GNSS measurement 204 has the time tagT_(N), this time tag is preserved for new measurement position (for thetime position of “earlier” measurement 208 or “later” measurement 209).So, when the measurement synchronization with external timescale iscomplete, the new measurement taken into the required time instant, buttagged by a time tag of the default time instant.

There are two embodiments of measured time intervals 207 processing bythe firmware of TIMU 104. In one embodiment of the TIMU 104 the dataprocessing is simple measured data averaging and scaling to standardtime measuring units (milli-, micro- or picoseconds). In this case theaveraged and scaled time interval value 207 is transmitted to GNSSprocessor 103. If this value is negative the firmware of the GNSSprocessor 103 interpolate the default GNSS measurement 204 to the pastposition of required GNSS measurement 208. If this value is positive,the firmware of the GNSS processor 103 extrapolates the default GNSSmeasurement 204 to the future position of the required GNSS measurement209. No actual GNSS measurements positions are changed. The interpolatedmeasurement 208 or extrapolated measurement 209 is used as outputmeasurement of the GNSS receiver 101. Output measurement has the sametime tag as actual measurement 204.

In another embodiment the TIMU 104 works as a difference unit for thenegative feedback delay locked loop. In this case the firmware of theTIMU 104 implements loop filter 119. The aim of this locked loop is toset the measured time interval 207 to zero. The TIMU 104 transmits theoutput value of the loop filter 119 after each new time intervalmeasurement. This value is used by firmware of the GNSS processor 103 toshift the time instant of the actual GNSS measurement 204 toward therequired time instant of GNSS measurement (208 or 209). When the timeinstant of the actual GNSS measurement is shifted according the controlvalue received from the TIMU 104, the edge 203 of the internal PPS 110and the time tag 205 will be shifted also. After the completion of thetransition process, the time instant of the actual GNSS measurement 205will coincide with required time instant for GNSS measurement. The errorof this coincidence is determined by the design of the loop filter 119.If the loop filter 119 is designed properly, this error is negligiblefor the GNSS processor 103 clocked by the highly stable externalfrequency 107 or very small if the processor 103 is clocked by internalfrequency 121.

FIG. 3 demonstrates the Time Interval Measurement Unit structure. TIMU104 consists of the analog part 117 and the digital part 118. The analogpart 117 includes a thermostabilized area 302 with analog circuits tomeasure time intervals, a heater/cooler 303 and a temperature sensor304. The digital part 118 includes a microprocessor 305 and a powerswitch 306 to control the electric current electric current flowingthrough the heater/cooler 303. Time interval measuring circuit, placedinside the thermostabilized area 302, includes a time intervaltransducer 307 and pulse matching circuits (PMC) 308.

The TIMU 104 has two PPS inputs. The first PPS input 111 is intended toconnect internal PPS 110. The second PPS input 112 is intended toconnect the external PPS 113. Pulse signals received from inputs 111 and112 are passed through two identical PMCs 308. The purpose of these PMCsis to match input impedances of TIMU 104 signal inputs 111, 112, tomatch signal levels at inputs 111 and 112 and required signal levels atinputs of time transducer 307, etc. The time transducer 307 measures thetime interval 207 between two consequent edges at the first input 111and at the second input 112. The measured time interval value 207 isprepared by the microprocessor 305.

The microprocessor 305 controls the time transducer 307, sets theoperation mode for the time transducer 307, reads time intervalmeasurements, etc. Data readied from the time transducer 307 isprocessed in the microprocessor 305. Processed data is transmitted toGNSS processor 103 via the bidirectional interface 116.

Also, the microprocessor 305 controls the temperature stabilization ofthe thermostabilized area 302. To do this the microprocessor 305 readsthe temperature of area 302 from the temperature sensor 304. Themicroprocessor 305 compares the read temperature with the targettemperature of area 302. If these temperatures are different, themicroprocessor 305 starts to control the switch 306 to set the value andthe direction of the electric current flowing through the heater/cooler303. The amplitude and the direction of the electric current areselected to eliminate the difference between measured and targettemperatures.

The heater/cooler 303 has two embodiments. In one embodiment 303 is aPeltier element. In this embodiment, the heater/cooler 303 can heat thearea 302 with the one direction of the electric current flowing throughit. Also, the heater/cooler 303 can cool the area 302 with the oppositedirection of the electric current flowing through it. In this embodimentof the heater/cooler 303 the switch 306 has to switch the currentdirection to achieve the target temperature of 302.

In another embodiment, the heater/cooler 303 is a simple heater (withouta cooling function). In this embodiment 303 can only heat the area 302.The cooling of the area 302 is achieved by natural heat convection when303 is switched off. In this embodiment of 303 the switch 306 has toturn on and off the current to achieve the target temperature of 302.The direction of the current does not matter.

FIG. 4 illustrates a typical Allan variance for the time intervalmeasurements. The Allan variance 400 is an industry-standard tool toanalyze the structure of the measurement noise, clock or oscillatordrifts, and to demonstrate the effect of the time interval measurementsaveraging by the sliding window. The single measurement of the timeinterval 207 does not have enough precision. The typical Root MeanSquare (RMS) of the noise error of that single measurement is 50-100 ps.This noise error may be reduced if several consequent originalmeasurements are averaged. In this case the mean value is used as theoutput value. When a new original measurement became available, it isadded to the set of data for averaging, and the oldest previousmeasurement is removed from this set of data. So, the set of data foraveraging is continuously updated, but the length of this set of dataremains constant and finite. This approach to finite-length averaging isknown as sliding-window averaging. The length of the data set is calledthe length of the sliding window. If the period of data sampling isconstant, the product of this period and the length of the window givethe duration of the sliding window or the averaging time. The averagingtime is the horizontal axis 401 of the Allan variance. The vertical axis402 is the square root of the Allan variance, called “Allan RMS”.

If we have the PPS period of 1 sec, the averaging time of 1 sec means noaveraging in fact. The output value is exactly equal to the originalinterval measurement value. The Allan RMS value 403 for this shortestaveraging time is equal to original single-measurement noise RMS (55 psfor this particular case). When the averaging time is increased (or thelength of the sliding window is increased), the measurement noise RMS ofthe averaged value decrease inversely proportionally to the square rootof averaging time. This decrease manifests itself as a part 404 of theAllan RMS with a negative slope.

However, obviously, it is impossible to increase the averaging timeinfinitely. All real measurement data contain slow-varying randomdrifts. When the averaging time is small these drifts does notcontribute to the Allan variance, because they look like constants. Butwhen the increasing averaging time becomes comparable to acharacteristic time of these slow random drifts, they start tocontribute to the Allan variance as additional random processes. Afterthat moment, the RMS of the averaged value starts to increase along withthe averaging time increase. This increase manifests itself as a part405 of the Allan RMS with a positive slope.

There is the optimal point 406, where the averaging time is long enoughto remove a significant part of the measurement noise but short enoughin comparison with the characteristic time of slow random drifts. Theaveraging time 407 corresponding to this point 406 is the optimalaveraging time. For this particular case 400 this point 406 may be foundat the optimal averaging time 407 equal to 200 sec. The RMS of thisaveraged value is 6 picoseconds. The value of the averaging time 407 forthis point 406 is constant and depends on drifts and noises parametersof the TIMU 103, the GNSS board 102 and the external time reference 111.The optimal averaging time 407 is chosen as the duration of the slidingwindow for the time interval measurements processing within the TIMU103.

Another approach to time interval measurements averaging is the use of adigital low-pass filter instead of a sliding window. The frequencyresponse of this low-pass filter is designed to match the power-spectraldensity of slow random drifts. In this case this matched low-pass filtereffectively removes a significant part of an energy of a wideband randommeasurement noise. On the other hand, this filter passes through asignificant part of the energy of a narrowband low-frequency spectrum ofslow random drifts.

As will be appreciated, all or some of the various components describedabove can be implemented as discrete components, as an integratedcircuit, or as an ASIC or an FPGA. Using a board, such as a motherboard,for mounting the components of the GNSS is a common approach, althoughthe invention is not limited to this embodiment.

Having thus described a preferred embodiment, it should be apparent tothose skilled in the art that certain advantages of the described methodand system have been achieved.

It should also be appreciated that various modifications, adaptations,and alternative embodiments thereof may be made within the scope andspirit of the present invention. The invention is further defined by thefollowing claims.

Related documents, all incorporated herein by reference:

-   1. Zarchan, P. (ed), Global Positioning System: Theory and    Application. Vol. 1, AIAA, Washington, D.C., 1996.-   2. Klepczynski, W. J, GPS for Precise Time and time Interval    Measurement at Global Positioning System: Theory and Application.    Vol. 2, AIAA, Washington, D.C., 1996.-   3. U.S. Pat. No. 5,736,960, entitled “Atomic Clock Augmented Global    Positioning System Receivers and Global Positioning System    Incorporating Same.”-   4. U.S. Pat. No. 7,064,619 B1, entitled “Method and Apparatus for    Restarting a GPS-based Timing System Without a GPS Signal.-   5. U.S. Pat. No. 7,558,157 B1, entitled “Sensor Synchronization    Using Embedded Atomic Clocks.”-   6. U.S. Pat. No. 6,424,293 B2, entitled “Electronic Timing Systems.”

What is claimed is:
 1. A GNSS receiver with synchronization to anexternal timescale, comprising: a processor receiving GNSS signals froman antenna through RF frontend; a local oscillator generating aninternal clocking frequency signal; a Time Interval Measurement Unit(TIMU) that receives the internal PPS and an external PPS, measures atime interval between the internal and external PPS s and provides thetime interval to the processor; the processor calculating a GNSSmeasurement based on the GNSS signals at a time indicated by theinternal PPS and corrected by the time interval; and the processoroutputting the corrected GNSS measurement and a timestamp of thecorrected GNSS measurement based on the indicated time.
 2. The GNSSreceiver of claim 1, further comprising a housing having a firstconnector for receiving the external PPS from the external time source,the connector also being connected to the TIMU to provide the externalPPS to the TIMU.
 3. The GNSS receiver of claim 2, wherein the processorand the TIMU are inside the housing.
 4. The GNSS receiver of claim 1,wherein the processor and the RF tracts are mounted on a motherboard. 5.The GNSS receiver of claim 4, wherein the TIMU is mounted on themotherboard.
 6. The GNSS receiver of claim 1, wherein an internalclocking frequency signal is used for the GNSS measurement when theexternal PPS is not available.
 7. The GNSS receiver of claim 1, whereinthe TIMU interfaces to the processor through a bidirectional interface.8. The GNSS receiver of claim 7, wherein the processor uses thebidirectional interface to provide commands to the TIMU.
 9. The GNSSreceiver of claim 7, wherein the TIMU uses the bidirectional interfaceto provide the measured time interval to the processor.
 10. The GNSSreceiver of claim 1, wherein the TIMU measures the time interval betweenone edge of the internal PPS that is detected on a first input of theTIMU and a second edge of the external PPS that is detected on thesecond TIMU input;
 11. The GNSS receiver of claim 1, wherein theprocessor shifts edges of the internal PPS to indicate new time instantsof shifted GNSS measurements.
 12. The GNSS receiver of claim 1, whereinthe processor changes the timestamps according to the time intervalsfrom the TIMU.
 13. The GNSS receiver of claim 1, wherein the processorinterpolates or extrapolates the GNSS measurements to new measurementtimes based on the time intervals without physical shifts of actual GNSSmeasurements.
 14. The GNSS receiver of claim 13, wherein theinterpolated or extrapolated GNSS measurements are used as outputmeasurements of the GNSS receiver.
 15. The GNSS receiver of claim 1,wherein the TIMU includes an analog part to measure the time intervalbetween two pulses; a heater/cooler to change a temperature of theanalog part; a switch to change a direction and a value of an electriccurrent flowing through the heater/cooler; a temperature sensor tomeasure the temperature of the analog part; a digital part to controlthe analog part, to control the temperature of the analog part and toprocess raw measurements of the time intervals; and a measurementalgorithm implemented using hardware, software or firmware, to reducewide band measurement noise.
 16. The GNSS receiver of claim 15, whereinthe heater/cooler includes a Peltier module.
 17. The GNSS receiver ofclaim 15, wherein the heater/cooler is a heating-only module.
 18. TheGNSS receiver of claim 15, wherein the measurement algorithm uses asliding window data averaging algorithm with a sliding window lengthselected at a local minimum of Allan Variance.
 19. The GNSS receiver ofclaim 15, wherein the measurement algorithm uses a digital low-passfilter with a frequency response matched to a power spectral density ofslow random drifts.
 20. The GNSS receiver of claim 15, wherein themeasurement algorithm uses a loop filter to control time instants ofactual GNSS measurements.
 21. The GNSS receiver of claim 20, wherein theloop filter is a Proportional-Integrating-Differentiating filter.